__author__ = 'nvsmirnov'
# -*- coding: utf-8 -*-
import time
from Framework.PageClasses._CpBase import _CpBase
from Framework.DataClasses.CommonData import CommonData

class CpContracts(_CpBase):
    def openAuction(self):
        self.presence_of_element_located('content-area')

    def openContract(self, id):
        #Необходимо делать тестовый образ БД и привязываться к id
        url = CommonData.url + "common/contract/view2/auction/" + id
        self.driver.get(url)
        self.presence_of_element_located('content-area')

    def fillForm(self):
        self.driver.find_element_by_xpath(".//*[@type='button' and contains(.,'Загрузить новый проект')]").click()
        self.presence_of_element_located_byXpath(".//*[@type='file']")
        #Загрузить проект контракта
        self.driver.find_element_by_xpath(".//*[@type='file']").send_keys(CommonData.pathToFile)
        self.driver.find_element_by_xpath(".//*[@type='button' and contains(.,'Загрузить файл')]").click()

        #Проверить, что все успешно загрузилось
        self.presence_of_element_located_byXpath(".//*[@type = 'button' and contains (.,'OK')]")
        """
        label = self.driver.find_element_by_xpath(".//*[@class = 'ext-mb-text']")
        print("Текст лейбла: " + label.text.decode('utf-8'))
        assert label.text.decode('utf-8') == "Проект контракта добавлен"
        """
        self.driver.find_element_by_xpath(".//*[@type = 'button' and contains (.,'OK')]").click()
        time.sleep(10)
        self.driver.find_element_by_xpath(".//*[@type='button' and contains(.,'Опубликовать проект')]").click()

        #Подписать
        self.presence_of_element_located_byXpath(".//*[text()='Подпись документа']")
        self.driver.find_element_by_xpath(".//*[@type='button' and contains(.,'Подписать')]").click()
        """
        #JS Alert
        self.wait_for_alert()
        self.driver.switch_to.alert.accept()
        #Certificate window
        self.submit_certificate_window()
        #JS Alert
        self.wait_for_alert()
        self.driver.switch_to.alert.accept()
        #JS Alert еще один!
        self.wait_for_alert()
        self.driver.switch_to.alert.accept()

        #Дождаться завершения
        self.presence_of_element_located_byXpath(".//*[text()='Контракт подписан']")
        self.driver.find_element_by_xpath(".//*[@type='button' and contains(.,'OK')]").click()
        """